Programs

MS in Computer Science

What Will I Learn?

Our program provides a broad foundation of study in computer science combined with in-depth study in four concentration areas.

Graduate work in computer science involves the study of the development of physical and theoretical design and understanding of computer systems, as well as the implementation of those developments into everyday life.

Your Career

Upon graduation, you can pursue careers as become researchers, computer systems analysts, computer systems administrators, and other opportunities in the industry.

Who Can Apply?

If the applicant does not hold a BS in computer science, data science, computer engineering, or bioinformatics, they need to:

  1. Be a holder of a BS in engineering (other than computer engineering), data analytics, math, applied math, physics or statistics.
  2. Have taken during their BS the following 15 credits (Otherwise, the student must take these credits as remedial):

Curriculum

The Master’s in Computer Science program ensures depth and breadth in three core computer science areas: Artificial Intelligence and Data Science, Secure Computing and Networks, and Systems and Software. The program provides students with the option to select from a Professional Track, which is project-based, and a Research Track, which is thesis-based.

Professional Track (30 credits): The professional track caters to the local, regional, and international markets.  This track requires two core courses (CSC611 Design and Analysis of Algorithms - 3 credits, and CSC689 Research Methods in Computer Science - 3 credits) and a project (3 credits). Students can select the remaining 21 credits from a pool of elective courses that are structured into three areas. The student must take at least one course from each area. In addition, students are allowed to take up to 9 credits from other departments/programs, including business, math, engineering, and economics, after obtaining the approval of the department.

Research Track (30 credits): The research-based program is a stepping stone for a Ph.D. program.  The track requires two core courses (CSC611 Design and Analysis of Algorithms - 3 credits, and CSC689 Research Methods in Computer Science - 3 credits) and a Master’s Thesis (6 credits). Students can select the remaining 18 credits from a pool of elective courses that are divided into three areas. The student must take at least one course from each area. In addition, students are allowed to take up to 6 credits from other departments/programs, including business, math, engineering, and economics, after obtaining the approval of the department.

I. Professional Track (30 credits)

The Professional Track is structured as follows:

Number Course Cr
CSC611 Design and Analysis of Algorithms (Core Course) 3
CSC689 Research Methods in Computer Science  (Core Course) 3
CSC698 MS Project 3
— Elective courses 21

II. Research Track (30 credits)

The Research Track is structured as follows:

Number Course Cr
CSC611 Design and Analysis of Algorithms (Core Course) 3
CSC689 Research Methods in Computer Science  (Core Course) 3
CSC699 Thesis 6
— Elective courses 18

In both tracks, students can select the elective courses from the three areas below. The student must take at least three credits from each area in order to cover the breadth requirements.

This program also offers an Advanced Topics course that may be taken more than once, to allow even more in-depth knowledge in a particular area.

Area 1: Artificial Intelligence and Data Science

Number Course Cr
DSC610 Data Science and its Applications 3
CSC613 Computational Methods in Biology 3
CSC614 Meta-Heuristics 3
CSC615 Machine Learning 3
DSC613 Data Engineering 3
DSC622 Deep Learning and its Applications 3
DSC612 Data Ethics 1
DSC604 Statistics for Data Science 2
DSC614 Data Visualization 2
DSC623 Natural Language Processing with Deep Learning 2
DSC624 Reinforcement Learning 2
DSC625 Introduction to Generative AI 2
CSC660 Artificial Intelligence: Principles and Techniques 3
CSC688 Advanced Topics in Computer Science 3

Area 2: Secure Computing and Networks

Number Course Cr
CSC616 Cryptography and Data Security 3
CSC630 Blockchain Systems 3
CSC634 Network Programming 3
CSC635 Internet of Things 3
CSC636 Networks Security 3
CSC637 Pervasive Computing and Wireless Networking 3
CSC641 Quantum Computer Systems 3
CSC642 Smart Cities and Intelligent Transportation Systems 3
CSC688 Advanced Topics in Computer Science 3

Area 3: Systems and Software

Number Course Cr
CSC612 Foundations of Computer Science 3
CSC621 Transaction Processing Systems 3
CSC622 Distributed Systems 3
CSC623 Knowledge-Based Systems 3
CSC625 Discrete Event Simulation 3
CSC627 Advanced Database Systems 3
CSC690 Search-Based Software Engineering 3
CSC691 Advanced Software Engineering 3
CSC692 Cloud-Based DevOps Engineering 3
CSC694 Software Quality Assurance 3
CSC697 Managing Software Development 3
CSC688 Advanced Topics in Computer Science 3